﻿#ifndef COMPRESSHELPER_H
#define COMPRESSHELPER_H

#include <QObject>

class CompressHelper : public QObject
{
    Q_OBJECT
public:
    explicit CompressHelper(QObject *parent = nullptr);



public:
    /**
     * 将文件夹压缩成文件
     * 压缩方式为 D:/pig =》 D:/pig.tar.gz
     * @param path 输入路径
     * @param filename 输出文件，根据文件后缀自动压缩成相应的格式，目前自动识别 zip、tar.gz
     */
    void compress(const QString& path, const QString& filename);

    /**
     * 解压文件，并放到path中
     * @brief decompress
     * @param filename 输入文件，根据后缀名，识别 zip tar.gz 格式
     * @param path 输出路径
     */
    void decompress(const QString & filename, const QString& path);


public:
    static CompressHelper& INSTANCE();


signals:

};

#endif // COMPRESSHELPER_H
